package br.com.fromtis.jsf.modal.dao;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import org.hibernate.Session;
import br.com.fromtis.jsf.modal.entity.Categoria;
import br.com.fromtis.jsf.modal.entity.Produto;
import br.com.fromtis.jsf.util.HibernateUtil;





public class ProdutoDao implements IDao<Produto> {
	
	
	private Session session;
	
	@Override
	public void save ( Produto entity ) {
		session = HibernateUtil.getInstance().getCurrentSession();
		
		session.saveOrUpdate( entity );
		
		session.getTransaction().commit();
		session.close();
		
	}
	
	@Override
	public void delete ( Produto entity ) {
		// TODO Auto-generated method stub
		
	}
	
	@Override
	public void merge ( Produto entity ) {
		// TODO Auto-generated method stub
		
	}
	
	@Override
	public List<Produto> getListEntity () {
		List<Produto> toReturn = new ArrayList<>();
		session = HibernateUtil.getInstance().getCurrentSession();
		
		toReturn = session.createQuery( "from Produto" ).list();
		
		session.getTransaction().commit();
		session.close();
		
		return toReturn;
	}
	
	@Override
	public Produto getEntity ( Serializable id ) {
		
		session = HibernateUtil.getInstance().getCurrentSession();
		
		session.getTransaction().commit();
		session.close();
		
		return null;
	}
	
}
